A Circunferência & Área de um Círculo


Uma exploração da circunferência, e desenvolvimento e aplicações da área de um círculo.

[Direções : Execute primeiramente a seção Code Resource. Embora não haja output imediato, essas definições serão usadas posteriormente nessa worksheet.]

  0. Código

>    restart; with(plots): with(geometry):

Warning, the name changecoords has been redefined

>    sbl := 'axes = none,   scaling = constrained,
       thickness = 3, color = COLOR(RGB, .5,.4,.8)':
sgy := 'axes = none,   scaling = constrained,
       thickness = 3, color = COLOR(RGB, .5,.5,.6)':
sbe := 'axes = none,   scaling = constrained,
       thickness = 3, color = COLOR(RGB, .8,.7,.5)':
sor := 'axes = none,   scaling = constrained,
       thickness = 3, color = COLOR(RGB, .9,.7,.1)':
sgn := 'axes = none,   scaling = constrained,
       thickness = 3, color = COLOR(RGB, .4,.7,.4)':

>    cbl := 'color = COLOR(RGB, .5,.4,.8)':
cgy := 'color = COLOR(RGB, .5,.5,.6)':
cbe := 'color = COLOR(RGB, .8,.7,.5)':
cor := 'color = COLOR(RGB, .9,.7,.1)':
cyl := 'color = COLOR(RGB, .9,.8,.1)':
cgn := 'color = COLOR(RGB, .5,.8,.5)':

>    scanft := 'scaling = constrained, axes = none':
scanft := 'filled = true, axes = none, scaling = constrained':
scant2 := 'thickness = 2, axes = none, scaling = constrained':

>   

>    point(o,0,0);
circle( UC ,[o,1]):

o

>    RegPolyPlot  :=  proc( N )
  local k, n, ngon, c, UC;
  UC := plottools[circle]([0,0], 1, color=gray):
  ngon := n -> [seq([ cos(2*Pi*i/n), sin(2*Pi*i/n) ], i = 1..n)]:  
  c := n -> COLOR(RGB, .2+n/(2*N), .2+n/(2*N), .5);
  display([ UC,seq( polygonplot(ngon(n), color=c(n)), n = 3..N)],
           scaling = constrained, axes = none);
end proc:

>   

>   

  1.  A Circunferência


Pi  (prnuncia-se "pi") é definido como raio da circunferência para o diâmetro. Essa definição conduz a fórmulas simples para circunferências in termos de diâmetro e raio.

>    C/d  = Pi;

C/d = Pi

>    DiamFormula := C = solve(%, C);

DiamFormula := C = Pi*d

>    RadFormula := subs( d = 2*r, %);

RadFormula := C = 2*Pi*r



    Exemplo :
Se o círculo tem diâmetro de 10 pés. Qual o tamanho da circunferência?

>    subs( d = 10, DiamFormula);

C = 10*Pi

>    evalf(%);

C = 31.41592654



   Exemplo : Se o lago circular tem um raio de 43 pés. Qual o tamanho da margem?

>    subs( r = 43, RadFormula);

C = 86*Pi

>    evalf(%);

C = 270.1769682


Nós podemos resolver isso de outras maneiras.

   Exemplo : Se o diâmetro da copa circular de uma Sequoia gigante é 110 pés, qual é o raio da árvore?

>    subs( C = 110, RadFormula);

110 = 2*Pi*r

>    solve(%,r);

55/Pi

>    r = evalf(%);

r = 17.50704374


    Exemplo  : Suponha que a terra fosse uma esfera com raio de 6,000 milhas (uma milha = 5,280 pés), e uma fita de metal passase pelo equador. Se 5 polegadas da fita fossem cortadas, um objeto de que comprimento (em pés) poderia passar por esse buraco na fita?

>    New_R := 'New_R';
Old_R := 6000*5280;

New_R := 'New_R'

Old_R := 31680000

>    Band_C := 2*Pi*Old_R;
`Original circumference of the band in feet`;

Band_C := 63360000*Pi

`Original circumference of the band in feet`

>    New_C := Band_C + 1/2;

New_C := 63360000*Pi+1/2

>    New_C = 2*Pi*New_R;

63360000*Pi+1/2 = 2*Pi*New_R

>    solve( %, New_R);

1/4*(126720000*Pi+1)/Pi

>    New_R := evalf(%);

New_R := 31680000.08

>    New_R - Old_R;
`The height of the tallest object you could pass under the band, in feet`;

.8e-1

`The height of the tallest object you could pass under the band, in feet`

>    %%*12;
`...and in inches`;

.96

`...and in inches`


Mais ou menos uma polegada .... a fita mede aproximadamente 1 polegada.
 

  2. Examinando Área e Perímetro de Polígonos


Está claro de onde as fórmulas para a circunferência de um círculo aparecem, porque vem flui através da definição de
Pi . No entanto, não está claro como nós chegamos lá para encontrar a fórmula para a área de um círculo. De fato, a derivação para isso raramente aparece nesse nível.

É fácil calcular a área de triângulos e retângulos. De fato, a área de qualquer região determinada por linhas retas podem ser calculadas, cortando-a em triângulos ou outras formas simples. No entanto, uma forma curva como um círculo desafia esse método, porque ele não pode ser recortado em um número finito de polígonos.

Vamos começar examnando polígonos regulares como aproximação para círculos.


    
Vista Geométrica da Área

Uma estimativa crua para a área do círculo poderia ser encontrar a área de um polígono regular inscrita - isto é, um polígono tem todos os seus vértices no círculo, e cada canto é da mesma extensão.

>    RegPolyPlot(3);

[Maple Plot]

>    RegPolyPlot(6);

[Maple Plot]

>    RegPolyPlot(10);

[Maple Plot]



    Vista Numérica da Área dos Polígonos

Vamos olhar estas áreas numericamente. Aqui estão algumas mesas que mostram a área de vários polígonos regulares. Observe que como  n aumenta, a área fica mais e mais perto de  3.14159...

>    A := array( [seq( [ n, evalf(n*sin(Pi/n)*cos(Pi/n) )],   n = 2..10) ]):
A[1,1] := `Number of sides`:   A[1,2] := `Area of Polygon`:
print(A);

matrix([[`Number of sides`, `Area of Polygon`], [3, 1.299038106], [4, 2.], [5, 2.377641291], [6, 2.598076212], [7, 2.736410190], [8, 2.828427126], [9, 2.892544243], [10, 2.938926262]])

>    A := array( [seq( [ n, evalf(n*sin(Pi/n)*cos(Pi/n) )],   n = 11..20) ]):
A[1,1] := `Number of sides`:     A[1,2] := `Area of Polygon`:
print(A);

matrix([[`Number of sides`, `Area of Polygon`], [12, 3.000000000], [13, 3.020700618], [14, 3.037186174], [15, 3.050524824], [16, 3.061467461], [17, 3.070554164], [18, 3.078181291], [19, 3.084644957], [...

>    A := array( [seq( [ 10*n, evalf(10*n*sin(Pi/(10*n))*cos(Pi/(10*n)) )],  
            n = 1..10) ]):
A[1,1] := `Number of sides`:     A[1,2] := `Area of Polygon`:
print(A);

matrix([[`Number of sides`, `Area of Polygon`], [20, 3.090169944], [30, 3.118675359], [40, 3.128689301], [50, 3.133330840], [60, 3.135853899], [70, 3.137375813], [80, 3.138363830], [90, 3.139041318], [...

>    A := array([seq([100*n,evalf(100*n*sin(Pi/(100*n))*cos(Pi/(100*n)) )],  
            n = 1..10) ]):
A[1,1] := `Number of sides`:     A[1,2] := `Area of Polygon`:
print(A);

matrix([[`Number of sides`, `Area of Polygon`], [200, 3.141075908], [300, 3.141362982], [400, 3.141463463], [500, 3.141509971], [600, 3.141535235], [700, 3.141550470], [800, 3.141560357], [900, 3.14156...

>    A := array([seq([1000*n,
            evalf(1000*n*sin(Pi/(1000*n))*cos(Pi/(1000*n)) )],  
            n = 1..10) ]):
A[1,1] := `Number of sides`:     A[1,2] := `Area of Polygon`:
print(A);

matrix([[`Number of sides`, `Area of Polygon`], [2000, 3.141587486], [3000, 3.141590358], [4000, 3.141591362], [5000, 3.141591828], [6000, 3.141592081], [7000, 3.141592233], [8000, 3.141592331], [9000,...



Como você pode ver, quando nós temos um polígono regular com 10,000 lados, essa área é muito, muito perto do valor de
Pi . Quão perto?

>    evalf(2*Pi);

6.283185308

>    deviation := % - 3.141592447;

deviation := 3.141592861




    Vista Numérica do Perímetro dos Polígonos

Nós podemos verificar o perímetro de polígonos regulares. Apenas porque a área inclina-se em direção a
Pi , os perímetros parecem se aproximar ao valor de 2 Pi  = 6.283185308...

>    A := array( [seq( [ 10*n, evalf(10*n*sin(Pi/(10*n))*cos(Pi/(10*n)) ),
                     evalf(2* 10*n*sin(Pi/(10*n)))],  
            n = 1..10) ]):
A[1,1]:=`Number of sides`: A[1,2]:=`Area of Polygon`:
A[1,3] := `Perimeter of Polygon`:
print(A);

matrix([[`Number of sides`, `Area of Polygon`, `Perimeter of Polygon`], [20, 3.090169944, 6.257378604], [30, 3.118675359, 6.271707792], [40, 3.128689301, 6.276727659], [50, 3.133330840, 6.279051954], [...

>    A := array( [seq( [ 100*n, evalf(100*n*sin(Pi/(100*n))*cos(Pi/(100*n)) ),
                     evalf(2* 100*n*sin(Pi/(100*n)))],  
            n = 1..10) ]):
A[1,1]:=`Number of sides`: A[1,2]:=`Area of Polygon`:
A[1,3] := `Perimeter of Polygon`:
print(A);

matrix([[`Number of sides`, `Area of Polygon`, `Perimeter of Polygon`], [200, 3.141075908, 6.282926924], [300, 3.141362982, 6.283070466], [400, 3.141463463, 6.283120712], [500, 3.141509971, 6.283143966...


Talvez nós possamos usar essa observação para encontrar uma fórmula para a área de um círculo.
 

  3. Encontrando a Fórmula da Área Usando Polígonos

Vamos olhar um polígono regular novamente, e encontrar uma expressão para a área.

>    RegularPolygon( RegPoly ,7,o,1):
point(A,[cos(2*Pi/7), sin(2*Pi/7)]):
point(B,[cos(4*Pi/7), sin(4*Pi/7)]):
point(C,[cos(3*Pi/7)*cos(Pi/7), sin(3*Pi/7)*cos(Pi/7)]):
segment( rad1, [o, A]):
segment( rad2, [o, B]):
segment( h, [o, C]):
segment( side, [A,B]):
`(no output ... proceed to next command)`;
 

`(no output ... proceed to next command)`

>    display( draw(
          [ UC(thickness=1,cbe), RegPoly(thickness=2,cgn),
            rad1(color=red,thickness = 2),
            rad2(color=gold, linestyle = 3),
            h(thickness = 2, color = coral),
            side(thickness = 3, color = green)
          ]), axes=none, scaling=constrained        );

[Maple Plot]



Vamos dizer que esse polígono tenha n lados, cada extensão de s, e o polígono está inscrito em um círculo de raio r. (No diagrama acima, r é vermelho, e s é o segmento verde mais grosso). E vamos fazer com que h seja a altura do triângulo (o segmento perpendicular maravilhoso para o triângulo verde base).

A área desse tipo de polígonos regulares em geral, é n vezes a área de cada dos n triângulos que aparecem.

>    n:='n': s:='s': h:='h': C:='C':  P:='P':
`Area of one triangle` =   (1/2)*s*h;

`Area of one triangle` = 1/2*s*h

>    `Area of Polygon = Total Area of n Triangles` =   n*(1/2)*s*h;
AreaPolygon := n*(1/2)*s*h;

`Area of Polygon = Total Area of n Triangles` = 1/2*n*s*h

AreaPolygon := 1/2*n*s*h

>    Perimeter := n*s;
`Area of Polygon` = Perimeter*(1/2)*h;

Perimeter := n*s

`Area of Polygon` = 1/2*n*s*h


Agora aqui ocorre uma mágica. Como nós vimos na seção anterior (acima), o perímetro tende para
2*Pi . E  h tende para r.

>    Perimeter*(1/2)*h, `tends toward `, (2*Pi*r)*(1/2)*r;

1/2*n*s*h, `tends toward `, Pi*r^2


Em outras palavras, a área tende para

>    `Area of a Circle ` = Pi*r^2;

`Area of a Circle ` = Pi*r^2

  4. Área dos Círculos


Agora nós podemos usar o fruto de nosso exforço na forma de fórmula.

>    Area := A = Pi*r^2;

Area := A = Pi*r^2


 

    Exemplo :
Se uma cabra está amarrada em uma corda de 20 pés, e come toda a grama que é capaz de comer. Qual a quantidade de grama comida?

>    subs( r = 20, Area);
evalf(%);

A = 400*Pi

A = 1256.637062



    Exemplo : Um prato tem 30 cm de largura. Qual é a área?

>    r = 30/2;
subs( r = 15, Area);
evalf(%);

r = 15

A = 225*Pi

A = 706.8583472


     Exemplo :   A massa da pizza extende-se para cobrir uma frigideira de 12 polegadas por 21 polegadas. Se o padeiro encontra uma frigideira redonda, e re-extende a massa na forma de um círculo, qual o diâmetro do círculo?

>    PizzArea := 12*21;

PizzArea := 252

>    subs( A = PizzArea, Area);

252 = Pi*r^2

>    r^2 = solve(%, r^2);

r^2 = 252/Pi

>    r = sqrt(252/Pi);
evalf(%);

r = 6*7^(1/2)/Pi^(1/2)

r = 8.956231980

  5. Área de Anéis


Um anel é uma forma circular - a diferença de dois círculos.

>    display([
          polarplot( 5, theta = 0..2*Pi,
          filled = true, color = white),
          polarplot( 7, theta = 0..2*Pi,
          filled = true, color = COLOR(RGB,.4,.35,.25))   
      ],scaling = constrained );

[Maple Plot]

>    display([
          polarplot( 2, theta = 0..2*Pi,
          filled = true, color = white),
          polarplot( 9, theta = 0..2*Pi,
          filled = true, color = COLOR(RGB,.8,.0,.25))   
      ],scaling = constrained );

[Maple Plot]


Já que a forma é a diferença de dois círculos - um grande círculo menos um menor - a fórmula vem diretamente.

>    r := 'r':  R := 'R':
A = Pi*R^2  - Pi*r^2;
A = Pi*(R^2  - r^2);

A = Pi*R^2-Pi*r^2

A = Pi*(R^2-r^2)


A área dessas formas acima são :

>    `Area of 1st Annulus` = (7^2 -5^2)*Pi;
evalf(%);

`Area of 1st Annulus` = 24*Pi

`Area of 1st Annulus` = 75.39822370

>    `Area of 1st Annulus` = (9^2 -2^2)*Pi;
evalf(%);

`Area of 1st Annulus` = 77*Pi

`Area of 1st Annulus` = 241.9026344


Você pode encontrar a área da figura abaixo?... classe de um "anel duplo".....

>    display([
          polarplot( 2, theta = 0..2*Pi,
          filled = true, color = white),
          polarplot( 5, theta = 0..2*Pi,
          filled = true, color = COLOR(RGB,.4,.8,.25)),
          polarplot( 8, theta = 0..2*Pi,
          filled = true, color = white),
          polarplot( 9, theta = 0..2*Pi,
          filled = true, color = COLOR(RGB,.4,.8,.25))   
      ],scaling = constrained );

[Maple Plot]


 

  6. Área de Elipses


Uma elipse é uma figura redonda.

>    plot( [5*cos(theta),2*sin(theta), theta = 0..2*Pi], filled = true,
    scaling = constrained, thickness = 3, color = COLOR(RGB,.3,.6,.3));

[Maple Plot]

>    display(  [plot( [cos(theta),sin(theta), theta = 0..2*Pi], thickness=2,
       scaling = constrained, axes = none, color = COLOR(RGB,.7,.5,.2)),
       seq(  
       plot( [k*cos(theta)/6,sin(theta), theta = 0..2*Pi],
       scaling = constrained, axes = none, color = COLOR(RGB,.2,.1,.4)),
       k = 1..18)
       ]);

[Maple Plot]



De certa forma, uma elipse é um círculo com dois raios diferentes - um raio horizontal, a, e um raio vertical, b. Se você pensar em uma elipse desta maneira, é fácil lembrar a fórmula para a área de uma elipse.
        

                A = a*b*Pi


>    plot( [5*cos(theta),2*sin(theta), theta = 0..2*Pi], filled = true,
    scaling = constrained, thickness = 3, color = COLOR(RGB,.2,.1,.4));
A = 5*2*Pi;

[Maple Plot]

A = 10*Pi

>   

>    plot( [3*cos(theta),7*sin(theta), theta = 0..2*Pi], filled = true,
    scaling = constrained, thickness = 3, color = COLOR(RGB,.7,.7,.5));
A = 3*7*Pi;

[Maple Plot]

A = 21*Pi

>   

>